/*Copyright (C) 2013-2021 LZE*/
#include<bits/stdc++.h>
#define INF 0x7fffffff
#define mod 1000000007
#define eps 1e-6
using namespace std;
typedef unsigned long long ull;
typedef long long ll;
const int N=100010;
ll n,m,a[N];
ll lg[N]={-1};
ll st[N][18];
int main() {
	scanf("%lld%lld",&n,&m);
	for(ll i=1;i<=n;i++){
		scanf("%lld",&a[i]);
		st[i][0]=a[i];
		lg[i]=lg[i/2]+1;
	}
	for(ll j=1;j<=lg[n];j++){
		for(ll i=1;i+(1<<j)-1<=n;i++){
			st[i][j]=max(st[i][j-1],st[i+(1<<(j-1))][j-1]);
		}
	}
	ll l,r,len;
	for(ll i=1;i<=m;i++){
		scanf("%lld%lld",&l,&r);
        len=lg[r-l+1];
        printf("%lld\n",max(st[l][len],st[r-(1<<(len))+1][len]));
	}
	return 0;
}

